Alteryxで特定のセットを買った人の割合を計算したい
こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。
このシリーズでは、Alteryxを触り始めた際に出てくる「こうしたいけどやり方が分からない」「どのツールを使えばいいか分からない」といった疑問を切り口として、Alteryxの機能をご紹介していきます。
前回は「割合を表示したい」というテーマでしたが、今回も前回に続いて割合についてご紹介いたします。
特定のセットを買った人の割合を計算したい
上の表では、ハンバーガーまたはチーズバーガーとアイスティーまたはコーヒーを買った人を表示しています。この表から、ハンバーガーとコーヒーのセットを買った人の割合を計算します。
ワークフローの概要
上の図は、今回作成するワークフローです。Input Dataツールでデータを読み込んだのち、
- 対象のセットを買った人数を集計
- Formulaツールで対象のセットを買った人をチェック
- Summarizeツールで対象のセットを買った人を集計
- Sortツールで並べ替え
- 全体の数を集計
- Summarizeツールで全体の数を集計
- Joinツールでデータの結合
- Formulaツールで割合を算出
という処理を行います。
ワークフローの詳細
ここからは処理の内容を見ていきます。
[Preparation]->[Formura]を追加し、「Flag」という列を作成。この列には、ハンバーガーとコーヒーのセットだった場合に1を入力していきます。if文を利用して、以下の条件式を設定します。
- ハンバーガーとコーヒーのセットの場合には1
- それ以外の場合には0
また、次の処理で数を合計するため、[Data type]は「Int32」を選択します。
[Transform]->[Summarize]を追加し、「Food」と「Drink」を「Group By」でグループ化、「Flag」を「Sum」で合計します。これにより、「Food」と「Drink」のセットによる4つのグループに分けられました。また、ハンバーガーとコーヒーのセットには合計が入力されています。
[Preparation]->[Sort]を追加します。このあとにデータを結合するため、「Sum_Flag」を「Descending」で並べ替えるよう設定し、ハンバーガーとコーヒーのセットを一番上にします。
ここまでの処理で、「1.対象のセットを買った人数を集計」を行いました。
続いて、「2.全体の数を集計」を準備します。Summarizeツールを追加、「Customer」を「Count」で集計し、全体の数を出力します。
データを準備できました。
データを結合して、計算式を設定していきます。
[Join]->[Join]を追加します。「Join by Record Position」を選択し、位置によってデータを結合することで、ハンバーガーとコーヒーのセットの数と全体の数という2つのデータをまとめます。
Formulaツールを追加します。新しく「%」という列を追加し、割合を出力するための計算式を設定します。
ハンバーガーとコーヒーのセットの割合を出力できました。
最後に
今回は特定のセットを勝った人の割合を計算しました。これからもAlteryxの機能をご紹介していきます。
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。